package com.sh.data.engine.domain.integration.api.taskconfig.model.domain;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * 接口采集-http任务列表
 *
 * @author : changkong
 * @date : 2022/3/9
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class TaskItemDomain {

    /**
     * 任务id
     */
    private Long id;

    /**
     * 任务名称
     */
    private String taskName;

    /**
     * 接口地址
     */
    private String url;

    /**
     * 请求方式
     */
    private String httpRequestMethod;

    /**
     * 存储表
     */
    private String storageTable;

    /**
     * 任务状态 0-待发布 1-失败 2-成功
     */
    private Integer taskStatus;

    /**
     * 生效开始时间
     */
    private Date effectiveDateStart;

    /**
     * 生效结束时间
     */
    private Date effectiveDateEnd;

    /**
     * 调度周期 0-月 1-周 2-天 3-小时 4-分钟
     */
    private Integer cycle;

    /**
     * 执行开始时间的小时
     */
    private String startTimeHour;

    /**
     * 执行开始时间的分钟
     */
    private String startTimeMin;

    /**
     * 执行结束时间的小时
     */
    private String endTimeHour;

    /**
     * 执行结束时间的分钟
     */
    private String endTimeMin;

    /*
     * 月、周为执行日期 ，小时、分钟为执行间隔
     * 调度间隔, 选择周期为月时,显示1-30天, 星期时显示星期几. 周期为天时,不显示输入框, 周期为小时,显示1-23小时, 周期为分钟时,显示分钟
     */
    private String execPoint;

    /**
     * 跨周期依赖 0-不依赖上一周期 1-等待上一周期结束
     */
    private Integer cycleDependence;

    /**
     * 创建人
     */
    private String createBy;

    private Date startTime;

    // update by xxl
    private Date endTime;
}
